/*
	ArmorAblative.h
	(c)2005 Palestar Inc, Richard Lyle
*/

#ifndef ARMORABLATIVE_H
#define ARMORABLATIVE_H

#include "Game/GadgetArmor.h"

//----------------------------------------------------------------------------

class ArmorAblative : public GadgetArmor
{
public:
	DECLARE_WIDGET_CLASS();

	// NounGadget interface
	int	addValue() const
	{
		return 6000;
	}
	Type type() const
	{
		return ARMOR;
	}
	int buildTechnology() const
	{
		return 25;
	}
	int	buildCost() const
	{
		return 920;
	}
	dword buildFlags() const
	{
		return NounPlanet::FLAG_METALS;
	}
	int	buildTime() const
	{
		return 660;
	}
	// GadgetArmor interface
	bool canDeflect( dword nType ) const
	{
		return (nType & (DAMAGE_KINETIC | DAMAGE_ENERGY | DAMAGE_EMP)) != 0;
	}
	int	maxArmor() const
	{
		return (modifier() * (38250 + (11235 * level()))) * enhancementModifier( enhancementSystem(), NounEnhancement::MT_INCREASE );
	} //Add 2000 -JBUD- deleted 2000 -Reek- 40250 is 38250 now
	float damageModifier( dword nType ) const
	{
		if ( nType & (DAMAGE_KINETIC) )
			return 0.5f;		// more effective against kinetic damage - Reek - changed 0.2 to 0.5 5/18/2010
		return 1.0f;
	}
	int	repairRate() const
	{
		return 0;
	}
};

//----------------------------------------------------------------------------



#endif

//----------------------------------------------------------------------------
// EOF
